home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / w3who_dll.nasl < prev    next >
Text File  |  2005-03-31  |  2KB  |  93 lines

  1. # (C) Nicolas Gregoire <ngregoire@exaprobe.com>
  2. #
  3. #
  4.  
  5. if(description)
  6. {
  7.  script_id(15910);
  8.  script_version ("$Revision: 1.4 $");
  9.  script_cve_id("CAN-2004-1133");
  10.  script_cve_id("CAN-2004-1134");
  11.  script_bugtraq_id(11820);
  12.  
  13.  name["english"] = "w3who.dll overflow and XSS";
  14.  
  15.   
  16.  script_name(english:name["english"]);
  17.  
  18.  desc["english"] = "
  19. The Windows 2000 Resource Kit ships with a DLL that displays
  20. the browser client context. It lists security identifiers,
  21. privileges and $ENV variables. 
  22.  
  23. Nessus has determined that this file is installed on the remote host.
  24.  
  25. The w3who.dll ISAPI may allow an attacker to execute arbitrary commands 
  26. on this host, through a buffer overflow, or to mount XSS attacks.
  27.  
  28. See also : http://www.exaprobe.com/labs/advisories/esa-2004-1206.html 
  29. Solution : Delete this file
  30. Risk Factor : High";
  31.  
  32.  
  33.  script_description(english:desc["english"]);
  34.  
  35.  summary["english"] = "Determines the presence of w3who.dll";
  36.  
  37.  
  38.  script_summary(english:summary["english"]);
  39.  
  40.  script_category(ACT_MIXED_ATTACK);
  41.  
  42.  
  43.  script_copyright(english:"This script is Copyright (C) 2004 Nicolas Gregoire <ngregoire@exaprobe.com>");
  44.  
  45.  family["english"] = "CGI abuses : XSS";
  46.  family["francais"] = "Abus de CGI";
  47.  
  48.  script_family(english:family["english"], francais:family["francais"]);
  49.  
  50.  script_dependencie("http_version.nasl");
  51.  script_require_ports("Services/www", 80);
  52.  exit(0);
  53. }
  54.  
  55. #
  56. # The script code starts here
  57. #
  58.  
  59. include("http_func.inc");
  60. include("http_keepalive.inc");
  61.  
  62. port = get_http_port(default:80);
  63.  
  64. sig = get_kb_item("www/hmap/" + port + "/description");
  65. if ( sig && "IIS" >!< sig ) exit(0);
  66.  
  67. req  = http_get(item:"/scripts/w3who.dll", port:port);
  68. res  = http_keepalive_send_recv(port:port, data:req);
  69. if("Access Token" >< res)
  70. {
  71.  if(safe_checks()) {
  72.    security_warning(port);
  73.    exit(0);
  74.    }
  75.   
  76.   
  77.   req = string("GET /scripts/w3who.dll?", crap(600), " HTTP/1.1\r\n",
  78.   "Host: ", get_host_name(), "\r\n",
  79.   "User-Agent: Nessus\r\n");
  80.  
  81.  soc = http_open_socket(port);
  82.  if(!soc)exit(0);
  83.  send(socket:soc, data:req);
  84.  r = http_recv(socket:soc);
  85.  
  86.  # The page content is subject to localization
  87.  # Matching on headers and title
  88.  if("HTTP/1.1 500 Server Error" >< r &&
  89.     "<html><head><title>Error</title>" >< r) security_hole(port);
  90. }
  91. exit(0);
  92.